package com.pxmeta.party.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.pxmeta.party.entity.Gift;
import com.pxmeta.party.entity.LotteryLuckyUser;
import com.pxmeta.party.entity.vo.LuckyUserRankingVO;

import java.util.List;
import java.util.Map;

public interface ILotteryLuckyUserService extends IService<LotteryLuckyUser> {

    /**
     * 获取抽奖记录
     * @param userId
     * @return
     */
    List<Map<String, Object>> getLotteryRecord(Long userId);

    /**
     * 获取排行榜
     * @param type
     * @return
     */
    List<LuckyUserRankingVO> getLotteryRanking(Integer type, Integer page, Integer size);

    /**
     * 获取当前用户排名
     * @param userId
     * @return
     */
    LuckyUserRankingVO getCurrentUserRanking(Long userId, Integer type);

    /**
     *
     * @param page
     * @param size
     * @return
     */
    IPage<LotteryLuckyUser> getLotteryList(Integer page, Integer size, Integer type, String keyword);

    List<Gift> getLotteryItemList(Long recordId);

    List<LotteryLuckyUser> getByRecordId(Long userId, Long recordId);

    List<LotteryLuckyUser> getByRecordId(Long recordId);
}
